Forward Error Correction (FEC) is used in many communications and electronic systems to increase the reliability of data storage and transmission. At the data source, such as at the transmitting device, a parity check information is added to the original information to create code words with built-in error detection and error correction information. The resulting code words are either transmitted for immediate use or stored for later use, for example, use by the data sink or receiving device. Code words received by the receiving device may be corrupted by noise, erasure, or other errors. The receiver performs a decoding process on the received code words in order to detect and correct errors, and to extract the original information.
LDPC coding is one method of forward error correction used in modern communication and information systems. This is due to the high throughput, performance approaching channel capacity, and hardware-friendliness. Practical implementations of LDPC decoders use iterative decoding methods. Various scheduling methods exist for updating the variable nodes and check nodes, including flooding schedules and layered schedules.